﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Diagnostics.Contracts;

namespace BaseUnits
{
    public interface IPowerGrid
    {
        HashSet<IPowerPlant> PowerPlants { get; }
        void AddPowerPlant(IPowerPlant powerPlant);
        int GridId { get; }
        string Description { get; }
        double GetOutgoing(DateTime date);
        List<IPowerUnit> SortedPowerUnits(DateTime date);
        double TotalOutgoing(DateTime dateFrom, DateTime dateTo);
        SortedList<DateTime, IPowerUnit> DateSortedPowerUnits();
    }
}
